package controller;

import java.io.IOException;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import model.Livro;
import model.LivroUsuario;

/**
 * Servlet implementation class VisualizarLivro
 */

public class VisualizaLivro extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public VisualizaLivro() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		RequestDispatcher rd =  request.getRequestDispatcher("/visualizalivro.jsp");


		if(!(request.getParameterMap().containsKey("isbn")) && (request.getParameterMap().containsKey("idUsuario"))){
			response.sendRedirect("./listalivro");
		}
		
		String isbn = request.getParameter("isbn");
		int idUsuario = Integer.parseInt(request.getParameter("idUsuario"));
		
		String nome = "";
		String autor = "";
		int ano = 0000;
		String editora = ""; 
		String sinopse = "";
		int classificacao = 0;
		String estadoLivro = "";

		if(isbn != ""){
			Livro livro = new Livro(isbn);
			Livro livroAchado = livro.buscaLivro();
			
			
			if(livroAchado != null)
			{
				isbn =	livroAchado.getIsbn();
				nome = livroAchado.getNome();
				autor = livroAchado.getAutor();
				ano = livroAchado.getAno();
				editora = livroAchado.getEditora(); 
				sinopse = livroAchado.getSinopse();
				classificacao = livroAchado.getClassificacao();
				
				Livro livroUsuarioAchado;
				LivroUsuario livroUsuario = new LivroUsuario(isbn, idUsuario);
				livroUsuarioAchado = livroUsuario.buscarLivroUsuario();
				
				if(livroUsuarioAchado != null){
					estadoLivro = livroUsuarioAchado.getEstadoLivro();
					
				}else{
					response.sendRedirect("./listalivro");
				}
			}else
			{
				response.sendRedirect("./listalivro"); 
			}
		}else
		{	
			response.sendRedirect("./listalivro"); 
		}

		request.setAttribute("nome", nome);
		request.setAttribute("autor", autor);
		request.setAttribute("ano", ano);
		request.setAttribute("classificacao", classificacao); 
		request.setAttribute("editora", editora);
		request.setAttribute("isbn", isbn);
		request.setAttribute("sinopse", sinopse);
		request.setAttribute("estadoLivro", estadoLivro);

		rd.forward(request, response);
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
	}

}
